#include <stdio.h>
#include <stdlib.h>
#include <math.h>
void change(int n,int a[n][n]);
void spin(int n,int a[n][n]);
int main()
{
	int n,i,j;
	printf("要输入多少阶矩阵？\n");
	scanf("%d",&n);	
	int arr_0[n][n];
	printf("输入矩阵\n");
	for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			scanf("%d",&arr_0[i][j]);
		}
	}
	system("cls||scr");
	//spin(n,arr_0);调试spin函数用 
	//change(n,arr_0);调试change函数用 
	for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			printf("%d\t",arr_0[i][j]);
		}
		printf("\n");
	}
	spin(n,arr_0);
	change(n,arr_0); 
	//变换部分 
	for (i=0;i<n;i++)
	{
		for (j=0;j<n;j++)
		{
			if(arr_0[i][j]!=0&&arr_0[i][j]!=1)
			{
				spin(n,arr_0);
				change(n,arr_0);
				i=0; 
				break;
			}
			else if(i==0)
			{
				continue;
			}
		}
	for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			printf("%d\t",arr_0[i][j]);
		}
		printf("\n");
	}
	//计算矩阵的气
	int ct=0;
	for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			if(arr_0[i][j]==1)
			{
				ct++;
			}
		}
	} 
	printf("矩阵的气为%d",ct);
	}
	
}
void change(int n,int a[n][n])
{
	int b[n][n],i,j;
	for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			if(i>0)
			{
				b[i][j]=(int)fabs((float)a[i][j]-(float)a[i-1][j]);
			}
			else
			{
				b[i][j]=0;
			}
		}
	}	
	
	for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			a[i][j]=b[i][j];
		}
	}
}
void spin(int n,int a[n][n])
{
	int b[n][n],i,j;
	for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			b[i][j]=a[j][n-i-1];
		}
	}
	for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			a[i][j]=b[i][j];
		}
	}
}
//输入数组
//变换数组
//计算数组的气 
//11>31 12>21 13>11